Method and apparatus for maximizing power usage in a power plant

ABSTRACT

A method for controlling a plant to achieve desired operating results. Select operating parameters of the plant are measured and input to a plurality of transforms that define select actions to be taken by an operator of the plant as a function of the measured select operating parameters. Each of the transforms is associated with a portion of the measured select operating parameters and is operable to determine if a predetermined and associated condition exists in the plant, which would warrant the associated action being taken. The measured select operating parameters are processed through the associated transforms to determine for each of the transforms if the associated condition is present. An indication that the condition associated with any of the transforms is present, and for which transform, is provided to a user. A suggestion of the action to be taken for the associated indication is then provided to the user.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. Provisional Patent ApplicationSerial No. 60/156,472, filed Sep. 28, 1999 entitled “METHOD ANDAPPARATUS FOR MAXIMIZING POWER USAGE IN A POWER PLANT.”

TECHNICAL FIELD OF THE INVENTION

The present invention pertains in general to air limited power plantsand, more particularly, to a system for optimizing the operation of apower plant with respect to maximizing the output power thereof.

BACKGROUND OF THE INVENTION

Power generators have the requirement to provide power in an “on demand”mode. They must generate, on occasion, every last megawatt possible.Normally, most plants will operate from a cost standpoint to maximizethe cost per megawatt to operate to minimize certain parameters or tostay within certain federally regulated guidelines, such as for NOx.However, plants have a finite size and output capability and, therefore,all these parameters are defined in terms of the particular megawattsthat are generated. In some situations, such as times of peak consumerdemand for power on very hot summer days or very cold winter days, thedemand on a particular power plant is such that generation of themaximum number of megawatts is a primary goal. The reason for this isthat, during these times, the price of an additional megawatts is veryhigh. If a producer is unable to deliver the desired megawatts, they maybe required to purchase power at these higher costs to supply theirconsumer's needs. It would therefor be desirable to produce as many ofthe additional megawatts as possible before buying this additionalpower.

At present, power plants utilize a control system for controlling theoverall operation of the plant, which control system is interfaced withan operator to allow the operator to adjust various parameters of thepower plant. By reading the outputs of the power plant, such as furnacetemperatures, etc., the operator can determine certain parameters of theoperation thereof. These are typically manipulated via adjustment of thesetpoints applied to the controller to allow the power plant to functionin a certain manner. Each operator may have a different manner by whichthey adjust the operation of the plant through the setpoints and, assuch, the plant can operate in many different modes, depending uponwhich operator is actually on call at the time. Further, the goals forthe operation of the plant, although generally stated to the operators,is sometimes difficult to achieve with the current available tools forcontrolling the system. It is not that the control system does notprovide the ability to control the plant to achieve a desired operatingcondition but, rather, it is the ability to interpret all of the outputsof the plant as a whole and make a decision based upon all of theoutputs as to achieving a particular goal, such as extracting additionalmegawatts out of the system.

SUMMARY OF THE INVENTION

The invention disclosed and claimed herein is a method for controlling aplant to achieve desired operating results. Select operating parametersof the plant are measured and input to a plurality of transforms thatdefine select actions to be taken by an operator of the plant as afunction of the measured select operating parameters. Each of thetransforms is associated with a portion of the measured select operatingparameters and is operable to determine if a predetermined andassociated condition exists in the plant, which would warrant theassociated action being taken. The measured select operating parametersare processed through the associated transforms to determine for each ofthe transforms if the associated condition is present. An indicationthat the condition associated with any of the transforms is present, andfor which transform, is provided to a user. A suggestion of the actionto be taken for the associated indication is then provided to the user.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and theadvantages thereof, reference is now made to the following descriptiontaken in conjunction with the accompanying Drawings in which:

FIG. 1 illustrates a block diagram of the overall system for maximizingoutput power from a plant;

FIG. 2 illustrates a flowchart for providing decision transforms;

FIG. 3 illustrates a flowchart for the overall operation of the plantduring maximized operation;

FIG. 4 illustrates a diagrammatic view of the decision treedetermination;

FIG. 5 illustrates a block diagram of the maximizing operation;

FIG. 5a illustrates a text report generated for the operator;

FIG. 6 illustrates a block diagram of the fixed rule operation;

FIG. 7 illustrates a flowchart for converting a set of constants anddata;

FIG. 8 illustrates a diagrammatic view of a single rule;

FIG. 9 illustrates a block diagram of the plant; and

FIG. 10 illustrates a block diagram of the pulverizer.

DETAILED DESCRIPTION OF THE INVENTION

Referring now to FIG. 1, there is illustrated a block diagram of a powerplant 10, which power plant 10, which is an air-limited power planthaving multiple levels of coal firing. The general operation of thisplant in conjunction with a control system is described in U.S. patentapplication Ser. No. 09/224,648, filed Dec. 31, 1998, and entitled “AMETHOD FOR OPTIMIZING A PLANT WITH MULTIPLE INPUTS,” which is aContinuation-in-Part application of U.S. patent application Ser. No.09/167,504, filed Oct. 6, 1998, and entitled “A METHOD FOR ON-LNEOPTIMIZATION OF A PLANT,” both of which are incorporated herein byreference.

The plant 10 is controlled by a Distributed Control System (DCS) 12,which is operable to generate control values in the form of plant inputsu(t). These control inputs control the overall operation of the plant10. In addition, the information regarding the operation of the plant 10in the form of such things as flow values, pressure values, temperaturevalues, etc., are returned back to the DCS 12 along a data line 14 asmeasurable values. The DCS 12 is controlled by an operator throughvarious control inputs in a box 16. These control inputs in block 16allow the operator to manipulate the u(t) values to the plant 10.

The system of the present disclosure utilizes a runtime predictiveapplication engine 18, which is basically a predictive system asdescribed in U.S. Pat. Nos. 5,479,573 and 5,782,432, which areincorporated herein by reference. This system receives certain data fromthe DCS 12 along a data line 20 via a data interface 22 for input to theapplication engine 18. The application engine 18 is operable to utilizethis data, which constitutes a portion of the control data to the plantand the state values or measured values from the plant 10. These valuesare utilized in a predictive manner to both predict certain outputvalues of the plant and also to process certain transforms, as will bedescribed hereinbelow. These transforms are decision transforms whichare stored in a block 24. The application engine 18 is operable toprocess the received data through the application engine 18 to providecertain predicted values and certain measured values received from theDCS 12, process these values through the transforms and then provide anoutput to the DCS on line 28. The DCS 28 then interfaces with anoperator display 30, which operator display is operable to provide theoperator with certain indications as to the operation of the plant andadvice on certain actions to be taken in order to assist the operator inmanipulating the operation of the plant, i.e, defining various setpointsfor the DCS 12, the primary object being to maximize power output. It isunderstood that, whenever the operator inputs values or setpoints intothe control input box 16, this will result in a change in the operationof the plant 10. This change, as will be described hereinbelow, willthen result in new data that is processed through the transforms andsuggested actions, if any, displayed to the operator in order topossibly indicate to the operator certain modifications to thesetpoints. For example, if there is an increase in power demand and theoperator dials a higher megawatt level on the plant, the indication maybe that the plant cannot deliver the desired megawatts due to varioussettings. Utilizing the decision transforms, certain “fixed rules” canbe applied that will allow the operator to modify certain setpoints inorder to improve some aspect of the operation of the plant to extractadditional megawatts. These rules operate on various information outputfrom the plant such as temperature, flow rate, pressures, etc., as willbe described hereinbelow.

Referring now to FIG. 2, there is illustrated a flowchart depicting theoperation of generating the transforms. This is initiated at a block202. In general, the manner by which the transforms are generated is tofirst conduct engineer interviews with key operators of a system, asindicated by a function block 204. These operators are selected on thebasis of their demonstrated past history of being able to extract a fewmore megawatts out of the plant operation, this being an intuitiveoperation on the part of the operators. Each operator may have adifferent concept of how this is done and a different intuitive approachto one or more aspects of the operation of the plant that will yield theresult of increased megawatt output. This information is then simplifiedand codified through the application of knowledge engineering thatcorresponds to the operator's experience, as indicated by a block 206. Adecision tree is then generated as to the steps required in order tomake a decision in response to certain observed performance, asindicated by a function block 208. A corresponding transform is thengenerated, as indicated by a function block 210 to “fix” the experiencethat led to the decision in the transform. The program then flows to anEnd block 212 for this particular transform. Once all of the steps havebeen followed, this will result in a “fixed rule.”

Referring now to FIG. 3, there is illustrated a flowchart depicting theoverall operation of the plant during maximization of the operation,which is initiated at a block 302 and then proceeds to a function block304, wherein the overall operation of the plant is monitored. Data ispassed from the DCS 12 to a runtime application engine (RAE), asindicated by a function block 306, the RAE also combined with apredictive engine. The program then flows to a function block 208 toprocess data through the various transforms. This data is provided in acontinuous manner, which data is typically “tagged” data and iscontained in a tag list. This tag list defines the data that is requiredto be utilized by the transforms for the operation thereof. Since thisdata is received in a continuous manner, this is a “realtime”application.

A determined action is the result of processing data through thetransforms, as indicated by a function block 310 and this action isoutput to the operator on the operator display 30, as indicated by afunction block 312. Basically, the transform receives the data andvarious user defined setpoints or constants (the user being the one thatgenerated the transforms or updates of the transforms), processes thedata and constants through logic to determine a result or a conditiondefined by the transform output, and an then action defined as afunction of the result or condition. The program then flows to afunction block 314 wherein the operator takes the action at his/herdiscretion, there being no particular order defined when more than oneaction is suggested. In conjunction therewith, a full explanation issent to a defined location on the company Intranet as a report, asindicated by a function block 318. The program then flows to a Returnblock 320.

Referring now to FIG. 4, there is illustrated a diagrammatic view of thedecision tree that is generated prior to generation of the transform. Inthis decision tree generation, there are various decisions that must begone through in the knowledge engineering operation. This example isdirected toward the furnace wind box, which as described hereinbelow, isbasically the pressure that exists within a wind box and. In general,the wind box, as will be described hereinbelow, constitutes the entranceof secondary combustion air to the furnace, which has pressure. This isone parameter that can constitute a “bottleneck” to the operation of thesystem. This is a defined bottleneck which is defined through intuitiveoperation of the plant via the operators. There are a number of thesebottlenecks that are defined, one of which is the wind box and theassociated parameters thereof. The first item that must be looked at inthe disclosed example, which is a manipulatable variable (MV), is theoverall price, as indicated by a block 404. There is a threshold that isdefined, which threshold is variable and which constitutes a constant.The overall price for a given megawatt hour is compared with athreshold. If it exceeds the threshold, this is a true decision and ifit falls below the threshold, this is a false decision. During a falsedecision, there will be no action taken, as indicated by a block 406. Ifit exceeds the threshold, this indicates that there must be somethingdone to maximize power output at a given bottleneck (it being noted thatthese bottlenecks are related to the goal of the maximizationprocess—maximum megawatts in the present disclosure). Therefore, aparticular bottleneck must be examined. The decision tree will then flowto one of these bottlenecks, which is, in this example, the furnace windbox bottleneck. This is indicated by a function block 408, wherein thefurnace wind box setpoint is examined to determine if it is in the saferange, a predetermined and configurable constant. These ranges arepredefined as a result of discussing this aspect with the plantoperators. If it is not safe, this is a false decision and an actionwill be generated, as indicated by a block 410 to increase the setpointto a minimum safe value. During this operation, a plant operator mayactually have the setpoint set to a level that is not safe as defined inthe transform. This setpoint is the value that is utilized as a targetfor the operation of the plant, i.e., the operator utilizes thedistributed control system to seek a particular setpoint. By settingthis to the minimum safe value, this has been known by certain operatorsto increase megawatt output. However, if it was determined in block 408that the setpoint was in the safe range, then the flow of the decisiontree would be along a path 412 to determine if the setpoint is above apredetermined threshold. If it is in the safe range and the setpoint isless than the threshold, in this example, then this particularbottleneck will flow in the decision tree to a function block 416 totake no action. Essentially, the path from block 404 to 408 to 414 and416 indicates that this furnace wind box is not a bottleneck andmanipulations thereto will not maximize or increase megawatts that canbe output. However, if it were determined in block 414 that the setpointwere greater than the threshold, this would indicate an action, asindicated by a function block 418, that the furnace wind box setpointshould be reduced to the threshold or below. Again, these actions areintuitive actions that have been utilized in the past by operators ofthe plant.

Referring now to FIG. 5, there is illustrated an overall diagrammaticview of the operation of the system. The plant 10 is operable to providedata in the form of manipulated variables and measured variables, theinput or manipulated variables defined as u(t) and the measuredvariables indicated by the s(t) vector. Both of these vector inputs arereceived by a data distributor 502, which data distributor 502 isoperable to only distribute the data necessary for the transforms, i.e.,the tagged data. These are continually distributed to transform blocks504 for transforms XFORM1, XFORM2 . . . , XFORMn. Each of thesetransforms is based upon a different set of rules, and may involvedifferent operators to originally define them. Each of the transforms504, in addition to receiving the appropriate distributed data fromblock 502, this being typically different data, also receives variousconstants and thresholds from a block 506. These are defined for eachtransform such that, when the associated rule is fixed, the constantsand thresholds, although they could be varied, and the data are receivedand processed through the transform and provide as an output a result onlines 510. These results are then input to an action distribution block512, which determines the action taken for each transform output andthen generates an output for input to the display 30. Each action willhave a separate requirement.

Typically, in the disclosed embodiment, the actions are represented onthe display by action lights that indicate to the operator there is aparticular action to be taken. A report generator 514 then utilizes theinformation regarding the action to generate a report that is sent alonga communication link 516 to a user PC 518. Typically, this user PC 518is adjacent to the operator. The operator can look at his/her computerand see what action should be taken and whether the action should betaken. An example of this is illustrated in FIG. 5a. In this report, itcan be seen that the operator is apprized of the current price of thepower and a suggestion that action is justified to generate more power.The various setpoints are given to the operator indicating that they maybe higher than necessary, etc. This information can be utilized by theoperator to make the various changes. Additionally, this report can begenerated with a number of the transforms and the actions. The display,therefore, indicates to the operator that an action should be taken toincrease megawatt output and the report will give the operator some ofthe reasons behind it and the suggested settings. Typically, it is anincrease or a decrease of the setpoints. Additionally, the display 30could be provided with more detail to actually display to the operatorwhat action is to be taken. A combination of a report and/or display 30could be utilized.

Referring now to FIG. 6, there is illustrated a block diagram of each ofthe transforms 504. In general, this block is a fixed rule block 602,which receives data on a line 606 and various parameters such asconstants and thresholds on a line 608. This will provide on the outputthereof an action.

Referring now to FIG. 7, there is illustrated a flowchart illustratinghow the advice is actually rendered, a block 702 indicating constantsand a block 704 indicating data is input to a logic block 706. The logicblock 706 is the “fixed rule” which provides on the output thereof aresult, as indicated by a block 710. This result is the condition, i.e.,an air-limited restriction in the auxiliary air dampers, and then thiscondition is converted to advice in a block 712. This advice, asdescribed hereinabove, is predetermined through the interviews withplant operators for this particular condition. This constitutes anaction.

Referring now to FIG. 8, there is illustrated a diagrammatic view of theoverall expert system, which has associated therewith rules. This isreferred to as the IF and THEN statement. The first IF is with respectto the condition. This determines whether the condition is equal to thecut point, the cut point being the threshold or constant. If thecondition is met, i.e., the particular condition is at a point wherepower can be maximized, the system will then perform the THEN operation.This operation will provide the recommendation/action.

Referring now to FIG. 9, there is illustrated a diagrammatic view of afurnace/boiler system that has associated therewith multiple levels ofcoal firing. This, as set forth hereinabove, is described in U.S. patentapplication Ser. No. 09/224,648, filed Dec. 31, 1998, and entitled, “AMETHOD FOR ON-LINE OPTIMIZATION OF A PLANT,” which was incorporatedherein by reference. The central portion of the furnace/boiler comprisesa furnace portion 920 which is associated with a boiler 921. The furnaceportion 920 has associated therewith a plurality of delivery ports 922spaced about the periphery of the boiler at different verticalelevations. Each of the delivery ports 922 has associated therewith apulverizer 924 and a coal feeder 926. The coal feeder 926 is operable tofeed coal into the pulverizer 924 at a predetermined rate. Thepulverizer 924 crushes the coal and mixes the pulverized coal withprimary combustion air. The air carries the coal to the delivery ports922 in order to inject it into the furnace portion 920. Thefurnace/boiler will then circulate the heated air through multipleboiler portions represented by a section 930 to provide various measuredoutputs (CV) associated with the boiler operation. In addition, theexhaust from the furnace will have various nitrous oxides associatedtherewith and this will be pulled out of the furnace with an exhaust fan932. In general, the air that is input to the pulverizer 924 will gothrough an input wind box 934 which will distribute the air into thefurnace/boiler. There will be provided various dampers 936 into thefurnace portion 920 which can be controlled at various levels forvarious operations. All of these are conventional.

In general, the delivery ports 922 are disposed about the periphery ofthe furnace portion 920 in a tangential manner to the furnace centerpoint to perform a swirling fireball interior to the furnace. This iswhat is referred to as a “tangentially fired” boiler. However, otherboilers not utilizing tangential firing could be accommodated.Therefore, in order to maximize the operation of the overall system orto control the operation thereof, the various feed rates for coalfeeders 926, the air input, etc., can be controlled to meter thepulverized coal into the furnace. Also, the air input to the pulverizer924 is a combination of cold air and hot air to control the temperaturethereof.

Referring now to FIG. 10, there is illustrated a diagrammatic view ofthe pulverizer/coal feeder. The coal feeder 926 is operable to providethe coal to a grinder 940. The grinder 940 will grind the coal up into a“dust” or smaller particulate size into a chamber 942. Into this chamber942 is provided hot air from a source 944, the preheated primary air,and also a cold air inlet 946 from the atmopshere. Typically, air ispulled through the furnace 920 due to the heating nature thereof and theexhaust fan 932, this being a balanced air system with regulation on theinput and the output. However, the air flow of old atmospheric air andhot preheated air therethrough is manipulatable to control the operationthereof. The pulverized coal and the air mixture from the chamber 942 isthen output through an exit port to the furnace. There is measured atthe exit thereof an exit temperature in the inlet 946 and also apressure. There are various delta pressures that are measured atdifferent places along the air flow path, one also being a pressuremeasurement at a gauge 950 and proximate to the exhaust air device 932and also one in the wind box 934 with a gauge 952. One manipulatablevariable is the temperature set point of the exit cool/air mix leavingthe pulverizer. This controls the amount of hot air entering and theamount of cold air aspirated into the chamber 942 which will affect theexit temperature from the chamber 942. By changing this, certain aspectsof the pulverized coal can be changed.

Appendix A defines a transform list for the application disclosedherein. Appendix B illustrates a consolidated list of the transformswhich sets forth the various transforms, logic operations, conditionsand the desired advice. In Appendix B, these are set forth transforms0-14 referred to as bits. These will be described by way of example.

In transform 0 associated with bit 0, the constant sets the O₂ limit at2.5″ of a column, this being the limit of the O₂ pressure. This constantis input to the transform block associated therewith. In the logiccolumn, it is determined whether the O₂ level is greater than the limit,in addition to also determining that there is a flag set with respect tothe induced draft fan, this being the fan on the inlet for forcing airinto the system. This flag is typically set whenever the operationassociated therewith gets above a certain percentage, such as 95%, i.e.,it is reaching its limit. Once this percentage is exceeded, thisconstitutes a blocking operation and a flag is set. This data is one ofthe “tagged” data variables that provides an input. When this flag isset and the O₂ level is determined as exceeding the defined constant inthe configurable register, then this indicates a condition wherein theO₂ is higher than necessary for maximizing load. The advice is to thenreduce the maximum O₂ limit, i.e., the setpoint, by a delta value of0.1. Also note that the constant for a given unit may be different fromunit to unit as to the maximum O₂ limit.

In the next transform, bit 1, the exit gas temperature from the furnaceis examined. A constant is set as 290° F. as a maximum temperature andthen the logic examines whether the measured exit gas temperature (thegas temperature is determined as the average of three tagged datavalues, as indicated in the Appendix B), one of the tagged datavariables, is greater than the maximum value. If so, then the conditionwill be that the exit gas temperature is too high and the advice will beto blow the “IK” blowers and the preheater soot blowers. This operationwill actually remove soot from a certain portion of the furnace. Thishas been determined empirically to be a factor that could lower the exitgas temperature.

The next bit, bits 2-9 and the associated transforms, are associatedwith the operation of the pulverizer, or the “mill.” The millsconstitute four superheat side mills and four reheat side mills, itbeing possible to be more or less. There is determined to be a minimumexit temperature for the pulverizer or mill of 160°. This can varydepending upon a particular operator's idea of where the minimum limitsshould be. Typically, the pressure inside the mill should be a negativepressure since the air is being pulled out of the mill, it beingremembered that this is an air-limited system. Whenever the millpressure is greater than a value of 0.0, indicating a positive pressure,and the temperature is above the minimum limit, the action that isindicated to the operator is to reduce the temperature target by. 2° F.This results in less hot air being input thereto and an increase in theinduced air. The DCS 12 will take this action when the operator dials ina new temperature setpoint decreased by 2° F. Of course, thistemperature setpoint will always have to be above the minimum limit. Ithas been noticed that the reason that the pressure goes high is that asthe mill reaches maximum capacity, the differential pressure required toconvey the coal out of the pulverizer increases, and the inlet backpressure tends to raise. Not enough air can be received from the fenceddraft fan or the induced fan to create this differential pressure. Bylowering the temperature setpoint, more cold air which does not requirefan capacity is aspirated into the pulverizer providing more overall airflow, and reducing the back pressure. This can be continuallyincrementally by 2° F. increments. Once the pressure goes negative, thenno additional action will be taken, as there will be no benefit to thisaction, this being a perceived benefit perceived by an expert andembodied within the fixed rule. A positive pressure is a dangerousthing, in that coal and air duct can begin to exit the cold airaspiration port creating an explosive atmosphere near the pulverizer. Bythis technique the positive pressure is reduced, and air flow ismaximized allowing even more load to be carried.

The next two bits, bits 10 and 11 and the associated transforms, areassociated with the operation wherein the constant is the superheatedand reheated side mills being at a desired temperature of 180°. This isa desired temperature that is configurable and determined by operators.The logic determines whether the actual measured temperature is lessthan the desired temperature and that the mills are operating. If so,this indicates that the mill temperature is too low for this particularrule and the action is to raise the temperature setpoint. Of course,this action would contradict the transforms associated with bits 2-9.However, this is a separate action. If the operator sees that thesetpoints are too low, as indicated by the action lights associated withbits 10 and 11 being on, then the operator may want to raise thetemperature. However, if for some reason the mill pressure were to gopositive in any of the mills, then they would want to lower thetemperatures therein. In general, it is harder to grind the coal at thecolder temperatures and this would cause mechanical wear and tear on thevarious parts in the grinder. Therefore, unless the pressure has gonepositive, it would be desirable to push the pressure toward the maximumdesired temperature of 180°.

Bits 12 and 13 are associated with transforms that deal with the windbox-furnace pressure. Typically, there will always be a positivepressure differential such that the pressure of the wind box is alwaysgreater than that of the furnace, there being a negative pressure in thefurnace. The dampers 936 can be adjusted to achieve the pressuredifferential. Typically, there will be different levels of dampers whichcan be adjusted. The maximum delta pressure between the wind box and thefurnace is set in this example at 2.5″ of water column. This is themaximum pressure than can be tolerated. The logic requires the wind boxto furnace pressure to be greater than the maximum and that there be noblocking of the dampers. This blocking is a condition wherein thedampers are past a predetermined percentage closed value. If this alarmor flag is not on, and the wind box to furnace pressure is above themaximum and the induction fan blocking increase is on, indicating thatit is above a certain pressure, then this indicates a condition whereinwind box restrictions exist. To remove these and increase the megawattload, the wind box to furnace pressure target is reduced by a deltavalue of 0.2. This results in opening the restriction dampers on thewindbox, reducing total resistance to flow, and thereby releaving theair flow bottleneck. With additional air flow, it is then possible tocarry more megawatt load.

Bit 13 is associated with the feature referred to as CCOFA (ClosedCoupled Over Fired Air), which is associated with a standard function inthe boiler. There is provided a minimum value for the CCOFA of 70 onboth the superheated side and the reheated side. If the CCOFAs are lessthan the minimum and the flag for the induction fan blocking increase isset, this will indicate a condition of the fact that the CCOFA isrestricting flow. In this event, the DCS will be controlled, under theadvice of the system, to lower the NOx target by a factor of 0.02.Typically, whenever there is a problem with CCOFA restriction, theaction one would think to take would be to increase the NOx. In fact,the operators (only select ones) have noticed that a lowering of the NOxwill cause the CCOFA to reduce the restriction by increasing the CCOFAabove the minimum value. This will result in additional output ofmegawatts.

The operator is presented with a number of suggested actions via theaction lights and the reports to facilitate one or more actions. Thesesuggested actions are the result of generating transforms that codify alarge amount of expert knowledge as to achieving a particular desiredresult and which are then converted into suggested actions to achievethe desired result or goal, such as extracting a few more megawatts.However, there may be a number of goals that are desired at differenttimes. It could be that the operator would seek low NOx levels at aparticular time or low cost at another time. The transforms are gearedto a particular goal and not necessarily an overall optimized system. Inthe present example, such considerations as coal cost may be renderedinsignificant when faced with purchasing megawatts from another utility.

Although the preferred embodiment has been described in detail, itshould be understood that various changes, substitutions and alterationscan be made therein without departing from the spirit and scope of theinvention as defined by the appended claims. It should also be noted,that although this invention deals specifically with air limited units,the same invention could be used to relieve other bottlenecks such asenvironmental regulations on opacity, NOx, and thermal discharge simplyby collecting and automating the operator knowledge around these othercommon boiler bottlenecks.

APPENDIX A ProcInsFile {type “Dataset Transforms” ver “4.1.03” dategtransform {name “!Unit3_down!” expr “Sif(!AL3IG03A!<75, 1.0, 0.0); ifthe unit is down then application goes away.”} gtransform {name“!mw_o2_limit!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_o2_limit””,!AL3IG03A!), 1, SFILTER_FREEZE); read in tuneableparameters”} gtransform {name “!mw_exit_gas_max!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_exit_gas_max””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_sh_mill_min_limit!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_sh_mill_min_limit””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!mw_rh_mill_min_limit!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_rh_mill_min_limit””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!mw_sh_mill_out_desired!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_sh_mill_out_desired””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!mw_rh_mill_out_desired!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_rh_mill_out_desired””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!mw_wb_fur_max!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_wb_fur_max””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_sh_ccofa_min!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_sh_ccofa_min””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_rh_ccofa_min!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_rh_ccofa_min””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_sh_stm_limit!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_sh_stm_limit””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_GAM_check_generation_limit!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_GAM_check_generation_limit””,!AL3IG0 3A!), 1, SFILTER_FREEZE)”}gtransform {name “!mw_sh_stm_time_filter!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_sh_stm_time_filter””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!mw_fuz_diff!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_fuz_diff””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform {name“!mw_nox_time_filter!” expr“SExpAve(Sreadparam(““c:\duke\mw_max\max_mw_tune.params””,““mw_nox_time_filter””,!AL3IG03A!), 1, SFILTER_FREEZE)”} gtransform{name “!3sa_up!” expr “Sif(!FT3FH00!>= 2.8, 1.0, 0.0); scan to see whichfeeders are up”} gtransform {name “!3sb_up!” expr “Sif(!FT3FH06!>= 2.8,1.0, 0.0)”} gtransform {name “!3sc_up!” expr “Sif(!FT3FH12!>= 2.8, 1.0,0.0)”} gtransform {name “!3sd_up!” expr “Sif(!FT3FH18!>= 2.8, 1.0,0.0)”} gtransform {name “!3ra_up!” expr “Sif(!FT3FH03!>= 2.8, 1.0,0.0)”} gtransform {name “!3rb_up!” expr “Sif(!FT3FH09!>= 2.8, 1.0,0.0)”} gtransform {name “!3rc_up!” expr “Sif(!FT3FH15!>= 2.8, 1.0,0.0)”} gtransform {name “!3rd_up!” expr “Sif(!FT3FH21!>= 2.8, 1.0,0.0)”} gtransform {name “!s_fdrs_up!” expr “!3sa_up! + !3sb_up! +!3sc_up! + !3sd_up!; perform a few calculations needed by the logic”}gtransform {name “!s_fdrs_up!” expr “!3ra_up! + !3rb_up! + !3rc_up! +!3rd_up!”} gtransform {name “!Exit_gas_temp!” expr “(!AM3FH91E! +!AM3FH86E! + !AM3FH81E!) / 3; below we begin the logic scans to surfaceand remove bottlenecks to MW production”} gtransform {name“!Max_O2_limit_high_condition!” expr “Sif(!O031X095!>!mw_o2_limit!,Sif(!DC3AI04C!> 0.5, 1.0, 0.0), 0.0); If true, the O2 setpoint is higherthan necessary for max mw. recomend lower O2 sp.”} gtransform {name“!High_exit_gas_temp_condition!” exprSif(!Exit_gas_temp!>!mw_exit_gas_max!, 1.0, 0.0); If true then the exitgas temp is getting high, recommend IK Blowers and Preheat Sootbloweruse”} gtransform {name “!Postive_SA_mill_press_condition!” expr“Sif(!PT3FH24B!>=0.0. Sift(!3sa_up!>0.5,Sif(!TE3FH4S!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true SAmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_SB_mill_press_condition!” expr“Sif(!PT3FH30B!>=0.0. Sift(!3sb_up!>0.5,Sif(!TE3FH54!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true SBmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_SC_mill_press_condition!” expr“Sif(!PT3FH36B!>=0.0. Sift(!3sc_up!>0.5,Sif(!TE3FH60!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true SCmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_SD_mill_press_condition!” expr“Sif(!PT3FH42B!>=0.0. Sift(!3sd_up!>0.5,Sif(!TE3FH66!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true SDmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_RA_mill_press_condition!” expr“Sif(!PT3FH27B!>=0.0. Sift(!3ra_up!>0.5,Sif(!TE3FH51!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true RAmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_RB_mill_press_condition!” expr“Sif(!PT3FH33B!>=0.0. Sift(!3rb_up!>0.5,Sif(!TE3FH57!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true RBmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_RC_mill_press_condition!” expr“Sif(!PT3FH39B!>=0.0. Sift(!3rc_up!>0.5,Sif(!TE3FH63!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true RCmill is going positive, recomend lowering mill temp set point”}gtransform {name “!Postive_RD_mill_press_condition!” expr“Sif(!PT3FH45B!>=0.0. Sift(!3rd_up!>0.5,Sif(!TE3FH69!>!mw_sh_mill_min_limit!, 1.0, 0.0), 0.0), 0.0); if true RDmill is going positive, recomend lowering mill temp set point”}gtransform {name “!4Mill_SH_temp_low_condition!” expr“Sif(!s_fdrs_up!>3.0, Sif((!TE3FH48!< !mw_sh_mill_out_desired!<! Sor(!TE3FH54!<!mw_sh_mill_out_desired!) Sor (!TE3FH60′<!mw_sh_mill_out_desired!<!Sor (!TE3FH66!<!mw_sh_mill_out_desired!), 1.0,00), 0.0); if true then one or more SH mill temp is too low for 4 milloperaiton, recommend increase to desired”} gtransform {name“!4Mill_RH_temp_low_condition!” expr “Sif(!r_fdrs_up!>3.0,Sif((!TE3FH51!< !mw_sh_mill_out_desired!<!Sor(!TE3FH57!<!mw_sh_mill_out_desired!)Sor(!TE3FH63′<!mw_sh_mill_out_desired!<!Sor(!TE3FH69!<!mw_rh_mill_out_desired!), 1.0,00), 0.0); if true then one or more RH mill temp is too low for 4 milloperaiton, recommend increase to desired”} gtransform {name“!Wind_box_restriction_conditions!” expr“Sif((!O038X854!>!mw_wb_fur_max!) Sand (!DC3AI04A!<0.5) Sand(!DC3A104C!>0.5), 1.0, 0.0); if true then wind box restrictions exist,and recommend reduce fur/wv max by 0.2”} gtransform {name“!SA_CCOFA_restriction_condition!” expr“Sif((!PZ3FH10!<!mw_sh_ccofa_min!) Sor (!PZ3FH11!<!mw_sh_ccofa_min!),1.0, 0.0); if true then CCOFA restrictions exist, and recommend reduceNOX set point”} gtransform {name “!RA_CCOFA_restriction_condition!” expr“Sif((!PZ3FH12!<!mw_rh_ccofa_min!) Sor (!PZ3FH13!<!mw_rh_ccofa_min!),1.0, 0.0); if true then CCOFA restrictions exist, and recommend reduceNOX set point”} gtransform {name “!CCOFA_restriction_condition!”expr“Sif(!SA_CCOFA_restriction_condition!>0.5 Sor!RA_CCOFA_restriction_condition!>0.5, 1.0, 0.0); accumulated CCOFArestriciton scan”} gtransform {name “!add_load_condition!” expr“Sif((!Max_O2_limit_high_condition! + !High_exit_gas_temp_condition! +!Positive_SA_mill_press_condition! +!Positive_SB_mill_press_condition! +!Positive_SC_mill_press_condition! +!Positive_SD_mill_press_condition! +!Positive_RA_mill_press_condition! +!Positive_RB_mill_press_condition! +!Positive_RC_mill_press_condition! +!Positive_RD_mill_press_condition! + !4Mill_SH_temp_low_condition! +!4Mill_RH_temp_low_condition! + !Wind_box_restdction_condition! +!SA_CCOFA_restriction_condition! + !RA_CCOFA_restriciion_condition! +!CCOFA_restriction_condition!) <0.5 Sand !DC3AI04C!<0.5, 1.0. 0.0); Ifno alrams exist, and not O2 blocking incease, then add load”} gtransform{name “!GP3AI01A!” expr “0.0 +(Sif(Svalid(!Max_O2_limit_high_condition!}Sif(!Max_O2_limit_high_condition!>0.5. 1.0, 0.0), 0.0)) +(Sif(Svalid(!High_exit_gas_temp_condition!),Sif(!High_exit_gas_temp_condition!>0.5, 2.0. 0.0), 0.0)) +(Sif(Svalid(!Positive_SA_mill_press_condition!),Sif(!Positive_SA_mill_press_condition!>0.5, 4.0, 0.0), 0.0)) +(Sif(Svalid(!Positive_SB_mill_press_condition!),Sif(!Positive_SB_mill_press_condition!>0.5. 8.0, 0.0), 0.0))”}gtransform {name “!GP3AI01A!” expr “!GP3AI01A! +(Sif(Svalid(!Positive_SC_mill_press_condition!),Sif(!Positive_SC_mill_press_condition!>0.5, 16.0, 0.0), 0.0)) +(Sif(Svalid(!Positive_SD_mill_press_condition!),Sif(!Positive_SD_mill_press_condition!>0.5. 32.0, 0.0), 0.0))”}gtransform {name “!GP3AI01A!” expr “!GP3AI01A! +(Sif(Svalid(!Positive_RA_mill_press_condition!),Sif(!Positive_RA_mill_press_condition!>0.5, 64.0, 0.0)) +(Sif(Svalid(!Positive_RB_mill_press_condition!),Sif(!Positive_RB_mill_press_condition!>0.5, 128.0 0.0))”} gtransform{name “!GP3AI01A!” expr “!GP3AI01A! +(Sif(Svalid(!Positive_RC_mill_press_condition!),Sif(!Positive_RC_mill_press_condition!>0.5, 256.0, 0.0), 0.0)) +(Sif(Svalid(!Positive_RD_mill_press_condition!),Sif(!Positive_RD_mill_press_condition!>0.5. 512.0, 0.0), 0.0))”}gtransform {name “!GP3AI01A!” expr “!GP3AI01A! +(Sif(Svalid(!4Mill_SH_temp_low_condtion!),Sif(!4Mill_SH_temp_low_condition!>0.5, 1024.0, 0.0), 0.0)) +(Sif(Svalid(!4Mill_RH_temp_low_condition!),Sif(!4Mill_RH_temp_low_condition!>0.5, 2048.0, 0.0)”} gtransform {name“!GP3AI01A!” expr “!GP3AI01A! +(Sif(Svalid(!Wind_box_restriction_condition!),Sif(!Wind_box_reitriction_condition!>0.5, 4096.0, 0.0), 0.0)) +(Sif(Svalid(!CCOFA_reitriction_condition!),Sif(!CCOFA_restriction_condition!>0.5, 8192, 0.0) ,0.0)); here we arebuilding the word to pass back to the operator display”} gtransform{name “!GP3AI01A!” expr “!GP3AI01A! + (Sif(Svalid(!add_load_condition!),Sif(!add_load_condition! >0.5. 16384.0, 0.0) ,0.0))”} gtransform {name“!avg_sh_fdr_spd!” expr “(!FT3FH00! + !FT3FH06! + !FT3FH12! + !FT3FH18!)/ !s_fdrs_up!} gtransform {name “!avg_rh_fdr_spd!” expr “(!FT3FH03! +!FT3FH09! + !FT3FH15! + !FT3FH21!) / !r_fdrs_up!”} gtransform {name“!Avg_sh_stm_temp!” expr “SExpAve(((!AL3BC45A! + !AL3BC56B!)/2).!mw_sh_stm_time_filter!, SFILTER_FREEZE)”} gtransform {name“!Steam_temp_too_low_condition!” expr “Sif((!AL3IG03A!>= !mw_GAM_check_generation_limit!) Sand (!DC3AI03D!>0.5) Sand(!Avg_sh_stm_temp!<!mw_sh_stm_limit!), 1.0. 0.0) If the unit is athighrates, and is ready for optimization and the sh steam temp is low,then recommend GAM addition”}

APPENDIX B MAXIMIZE MW'S Point ID BIT Constants Logic GP3AI01A 0mw_o2_limit = 2.5 O2 > mw_o2_limit and ID Fan Blocking Increase 1mw_exit_gas_max = 290 Exit_Gas_Temp>mw_exit_gas_maxExit_Gas_Temp=(AM3FH91E+AM3FH86E +AM3FH81E)/3 2 mw_sh_mill_min_limit =160 SA Mill Press > 0.0 & > mw_sh_mill_mill_min_limit 3 SB Mill Press >0.0 & > mw_sh_mill_mill_min_limit 4 SC Mill Press > 0.0 & >mw_sh_mill_mill_min_limit 5 SD Mill Press > 0.0 & >mw_sh_mill_mill_min_limit 6 mw_rh_mill_min_limit = 180 RA Mill Press >0.0 & > mw_rh_mill_min_limit 7 RB Mill Press > 0.0 & >mw_rh_mill_min_limit 8 RC Mill Press > 0.0 & > mw_rh_mill_min_limit 9 RDMill Press > 0.0 & > mw_rh_mill_min_limit 10 mw_sh_mill_out_desired =180 SH Mill_Out_Temp<mw_sh_mill_out_desired AND 4 SH Mill operation 11mw_rh_mill_out_desired = 180 Mill_Out_Temp<Mill_Out_and 4 RH Milloperation 12 mw_wb_fur_max = 2.5 WB/Fur>mw_wb_fur_max and wb_ min blocknot on & ID Fan Blocking increase 13 mw_sh_ccofa_min = 70 SH or RHCCOFAs < mw_ccofa_min mw_rh_ccofa_min = 70 & ID Fan Blocking increase 14bits 0-13 are clear & ID fans not blocking increase Model OptimizerGP3AI01B 0 avg SH_fdr_speed > max fdr speed avg RH_fdr_speed > max fdrspeed 1 mw_sh_stm_limit = 1050 Once the Unit Is Ready for Optimization,mw_GAM_check_generation_limit = 200 and While MW >mw_GAM_check_generation_limit mw_sh_stm_time_filter = 0.00833 [1] IFtime_filtered avg SH_Temp > mw_sh_stm_limit 2 O2 Min > O2 Max 3 FDR spdMIN > FDR spd MAX 4 WB/Furn Min > WB/Furn Max Point ID BIT ConditionAdvice GP3AI01A 0 O2 is higher than necessary for reduce Max O2 limit by0.1 Maximizing Load 1 Exit Gas Temperature to high Blow the IK Blowersand the Preheater Sootblowers 2 SA Mill going positive Reduce SA MillTemp Target 2 deg F. 3 SB Mill going positive Reduce SB Mill Temp Target2 deg F. 4 SC Mill going positive Reduce SC Mill Temp Target 2 deg F. 5SD Mill going positive Reduce SD Mill Temp Target 2 deg F. 6 RA Millgoing positive Reduce RA Mill Temp Target 2 deg F. 7 RB Mill goingpositive Reduce RB Mill Temp Target 2 deg F. 8 RC Mill going positiveReduce RC Mill Temp Target 2 deg F. 9 RD Mill going positive Reduce RDMill Temp Target 2 deg F. 10 4 SH Mill Temperature to low Raisetemperature setpoint to 180 11 4 RH Mill Temperature to low Raisetemperature setpoint to 180 for all RH Mills 12 wind box restrictionexist reduce fur/wb max by 0.2 13 COOFAs restricting flow Lower NOxTarget by 0.02 14 Load can be added Add Load GP3AI01B 0 Feeder biasdefeated Increase Max Fdr Speed Above the avg_sh_fdr_spd andavg_rh_fdr_spd 1 Steam Temps too low Consider GAM usage 2 Infeasible O2Constraints Increase O2 Max = O2 Min 3 Infeasible FDR ConstraintsIncrease FRD spd Max or decrease FDR spd Min % 4 Infeasible WB/FurnConstraints Increase WB/Furn Max = WB/Furn Min

What is claimed is:
 1. A method for controlling a plant to achievedesired operating results, comprising the steps of: measuring selectoperating parameters of the plant; providing a plurality of transformsthat define select actions to be taken by an operator of the plant as afunction of the measured select operating parameters, wherein each ofthe transforms is associated with a portion of the measured selectoperating parameters and with a predetermined condition of the plantthat is a function of the portion of the measured select operatingparameters, and each of the transforms has embedded therein intuitiveactions taken by actual operators of the plant for the associatedcondition, and wherein each of the transforms is operable to determineif a the predetermined and associated condition exists in the plant,which would warrant the associated action being taken; processing themeasured select operating parameters through the associated transformsto determine for each of the transforms if the associated condition ispresent; and providing to a user an indication that the conditionassociated with any of the transforms is present and for whichtransform; and suggesting to the user the action to be taken for theassociated indication.
 2. The method of claim 1, and further comprisingthe step of controlling the operation of the plant in accordance withone of the suggested actions.
 3. The method of claim 1, wherein the stepof the providing an indication comprises activating a panel display toprovide a visual display to the user which is able to indicate to theuser which of the transforms had its conditions met.
 4. The method ofclaim 3, wherein the step of suggesting comprises generating a report tothe user defining suggested control steps to be taken for the operationof the plant.
 5. The method of claim 1, wherein the transforms comprisea set of rules determined by a history of operation of the plant toachieve in part the desired operating results.
 6. The method of claim 5,wherein the step of providing the transforms comprises: assembling ahistory of various observations of the operation of the plant andactions to be taken that have been observed to achieve a move of theplant toward the desired operating results; defining a decision treethat has embedded therein measurable variables of the plant and/orinputs to the plant and logic steps to define each of the assembledobservations; and fixing the decision tree path into a fixed rule as atransform operating on the associated measurable variables of the plantand/or inputs to the plant.
 7. The method of claim 1, wherein one of theselect operating parameters of the plant is a commercial operatingparameter that defines the commercial operation of the plant.
 8. Themethod of claim 7, wherein the plant is a power plant and the commercialaspect constitutes the cost of generating power.